From eeab33b7cd33d2f5fb102eda4d3b3493c313d432 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 27 Oct 2010 11:34:36 +0000 Subject: [PATCH] merge r23127 SVN-Revision: 23659 --- target/linux/generic-2.6/files/drivers/net/phy/rtl8366rb.c | 5 +++++ target/linux/generic-2.6/files/drivers/net/phy/rtl8366s.c | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/target/linux/generic-2.6/files/drivers/net/phy/rtl8366rb.c b/target/linux/generic-2.6/files/drivers/net/phy/rtl8366rb.c index ec196f941b..9615eebeab 100644 --- a/target/linux/generic-2.6/files/drivers/net/phy/rtl8366rb.c +++ b/target/linux/generic-2.6/files/drivers/net/phy/rtl8366rb.c @@ -25,6 +25,7 @@ #define RTL8366RB_PHY_NO_MAX 4 #define RTL8366RB_PHY_PAGE_MAX 7 #define RTL8366RB_PHY_ADDR_MAX 31 +#define RTL8366RB_PHY_WAN 4 /* Switch Global Configuration register */ #define RTL8366RB_SGCR 0x0000 @@ -1063,6 +1064,10 @@ static int rtl8366rb_phy_config_init(struct phy_device *phydev) static int rtl8366rb_phy_config_aneg(struct phy_device *phydev) { + /* phy 4 might be connected to a second mac, allow aneg config */ + if (phydev->addr == RTL8366RB_PHY_WAN) + return genphy_config_aneg(phydev); + return 0; } diff --git a/target/linux/generic-2.6/files/drivers/net/phy/rtl8366s.c b/target/linux/generic-2.6/files/drivers/net/phy/rtl8366s.c index 66dc2db0df..d45e4d76c3 100644 --- a/target/linux/generic-2.6/files/drivers/net/phy/rtl8366s.c +++ b/target/linux/generic-2.6/files/drivers/net/phy/rtl8366s.c @@ -25,6 +25,7 @@ #define RTL8366S_PHY_NO_MAX 4 #define RTL8366S_PHY_PAGE_MAX 7 #define RTL8366S_PHY_ADDR_MAX 31 +#define RTL8366S_PHY_WAN 4 /* Switch Global Configuration register */ #define RTL8366S_SGCR 0x0000 @@ -1090,6 +1091,10 @@ static int rtl8366s_phy_config_init(struct phy_device *phydev) static int rtl8366s_phy_config_aneg(struct phy_device *phydev) { + /* phy 4 might be connected to a second mac, allow aneg config */ + if (phydev->addr == RTL8366S_PHY_WAN) + return genphy_config_aneg(phydev); + return 0; } -- 2.30.2